МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
Розрахунково-графічна робота
з курсу «Чисельні методи»
Варіант 9
ЗАВДАННЯ
Розв'язати систему лінійних алгебраїчних рівнянь методом Гаусса за схемою Халецького наведену у Додатку 1 згідно варіанту індивідуального завдання отриманого у викладача. Навести хід розв’язку. Здійснити перевірку розв’язку СЛАР за допомогою 2 ітерацій методом простої ітерації. Написати програму.
Побудувати графік функції наведеної у додатку 2 згідно варіанту індивідуального завдання отриманого у викладача. На заданому інтервалі для 5 різних точок побудувати інтерполяційний поліном (степінь див. додаток 2). За допомогою інтерполяційного полінома дослідити вплив степені полінома на точність одержаних результатів. Навести хід розв’язку. Написати програму
Дати розгорнуту відповідь на контрольні запитання наведені у додатку 3.
Варіант9:
Додаток 1:9
Додаток 2:№ вар.11,степ.пол.5, степ.пол.6
Додаток 3:1 пит.-47,2 пит.-19
47. Зведення задачі інтегрування системи звичайних диференціальних рівнянь до послідовності задач інтегрування диференціальних рівнянь першого класу.
19. Інтегральна квадратична апроксимація на відрізку.
Завдання 1
9.
Хід розв’язку:
Заповнюю таблицю коефіцієнтів і таблицю вільних членів, відповідно до завдання;
Отримую розв’язок системи рівнянь за методом Гауса
Задаюточність обчислення для методу простих ітерацій;
Знаходжу розв’язки системи рівнянь за допомогою методу простих ітерацій, а також ітерацію, на якій цей розв’язок було знайдено;
Результати даних дій почергово виводяться на екран, для методу простих ітерацій на екран виводяться матриці знормованої системи;
Аналізую отримані результати;
Код програми (MATLAB)
clear all;
clc;
disp('Таблиця коефіцієнтів:')
A=[-11 1 -6 4; -6 15 -4 3; 1 1 11 1; -4 1 1 -11]
disp('Таблиця вільних членів:')
B=[-9; 4; -2; 4]
r=4;
disp('Метод Гауса')
Od=rref([A B]); %отримання одиничної матриці з розширеної
X=Od(1:r,(r+1)) %корені системи рівнянь
disp('Метод простих ітерацій')
%зведення системи до нормальної
AA=A'*A;
BB=A'*B;
e=0.00001;
t=0;
iter=0;
% кількість ітерацій
disp('Матриця A знормованої системи(A"A)');
disp(AA); %вивід матриці коефіцієнтів
disp('Матриця B знормованої системи(A"B)');
disp(BB); %вивід матриці вільних членів
NumIter=30;
for i=1:4,
for j=1:4,
if i==j
c(i,j)=0;
else
c(i,j)=-AA(i,j)/AA(i,i);
end;
end;
end;
for i=1:4,
d(i)=BB(i)/AA(i,i);
end;
for i=1:4,
sum1=0;
for j=1:4,
sum1=sum1+c(i,j);
end;
s1(i)=sum1;
end;
for i=2:4,
if s1(i)>sum1
sum1=s1(i);
end;
end;
if abs(sum1)<1
for i=1:4,
x0(i)=d(i);
end;
for i=1:4,
s=0;
for j=1:4,
s=s+c(i,j)*x0(j);
end;
xk(i)=s;
end;
for i=1:4,
xk(i)=xk(i)+d(i);
end;
while((t<4)||(t>4))
iter=iter+1;
for i=1:4,
x0(i)=xk(i);
z(i)=x0(i);
end;
for i=1:4,
s=0;
for j=1:4,
s=s+c(i,j)*z(j);
xk(i)=s+d(i);
z(i)=xk(i);
end;
end;
t=0;
for i=1:4,
if(abs(xk(i)-x0(i))<e)
t=t+1;
end;
if t==4
for j=1:4,
disp(['X',num2str(j),' = ', num2str(xk(j))]);
end;
disp(['Ітерація ',num2str(iter)]);
end;
end;
end;
else
disp('Система не вирішена');
end;
clear all;
clc;
disp('Таблиця коефіцієнтів:')
A=[-3 1 -11 4; -4 -3 -3 0; 1 -7 -13 -2; 4 -5 3 -4 ]
disp('Таблиця вільних членів:')
B=[1; -4; -1; 0]
r=4;
disp('Метод Гауса')
Od=rref([A B]); %отримання одиничної матриці з розширеної
X=Od(1:r,(r+1)) %корені системи рівнянь
disp('Метод простих ітерацій')
%зведення системи до нормальної
AA=A'*A;
BB=A'*B;
e=0.00001;
t=0;
iter=0;
% кількість ітерацій
disp('Матриця A знормованої системи(A"A)');
disp(AA); %ви...